<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Mo.js - 简洁高效，容易扩展 - JavaScript Library</title>
<script src="../lib/mo.js" type="text/javascript" charset="utf-8"></script>
<script src="../lib/mo.form.js" type="text/javascript" charset="utf-8"></script>
<script src="../res/static.js" type="text/javascript" charset="utf-8"></script>
<link href="../res/layout.css" media="screen" rel="stylesheet" type="text/css" />

</head>
<body>

    <div id="wrapper">

        <h1 id="mo-js"> Mo<span>.js</span> </h1>
        <h4 id="build"> Mo.js - 高效 JavaScript 函数库 </h4>
        
        <div id="search">
            <form action="../search.html" method="get">
                <input type="text" name="q" value="搜索..." />
            </form>
        </div>

        <div id="naver">
            <ul>
                <li><a href="../index.html">Home</a></li>
                <li><a href="../browser.html">Browser</a></li>
                <li><a href="../selector.html">Selector</a></li>
                <!--li><a href="../ajax.html">Ajax</a></li-->
                <!--li><a href="../drag.html">Drag</a></li-->
                <li><a href="../event.html">Event</a></li>
                <li><a href="../date.html">Date</a></li>
                <li><a href="../string.html">String</a></li>
                <!--li><a href="../number.html">Number</a></li-->
                <li><a href="../array.html">Array</a></li>
                <li><a href="../cookie.html">Cookie</a></li>
                <li><a href="../validate.html">Validate</a></li>
                <!--li><a href="../hash.html">Hash</a></li-->
                <li><a href="../method.html">Method</a></li>
                <li><a href="../api.html">API</a></li>
            </ul>
        </div>
        
        <div id="locate">
            Mo &gt; API &gt; Color
        </div>

        <dl id="entry">

            <dt> Mo.Form( form , func ) </dt>
            <dd>
                <p>表单验证工具。</p>
                
                <blockquote>
                    <p> <strong>form</strong>  表单对象</p>
                    <p> <strong>func</strong>  回调函数，用于处理错误信息</p>
                </blockquote>
                
                <p>func 可接受参数</p>

                <blockquote>
                    <p> <strong> error </strong> 错误消息</p>
                    <p> <strong> ele </strong> 当前元素</p>
                </blockquote>

                <pre>Mo.Form( this , function( error, ele ){ alert( error ); });</pre>
                
                <form action="?" method="post" onsubmit="return Mo.Form( this , function( html ){ alert( html ); });">

                <p> 名称：<input type="text" name="account" value="" fix_name="用户名称" fix_null="yes" /> </p>
                
                <p> 金额：<input type="text" name="price" value="" fix_name="消费金额" fix_number="yes" /> </p>

                <p> <button type="submit">测试</button> </p>
                
                </form>
                
				<p>表单元素支持以下自定义元素</p>
                
                <table border="0"cellpadding="0" cellspacing="1">
                    <thead>
                    <tr>
                        <td>属性：</td>
                        <td>取值：</td>
                        <td>描述：</td>
                    </tr>
                    </thead>
                    <tr>
                        <td>
                            fix_name
                        </td>
                        <td>提示文字</td>
                        <td>
                            * 必填项
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_null
                        </td>
                        <td> "yes" 强制检查<br />"no" 值可为空，不为空时检查 </td>
                        <td>
                            为空检查
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_number
                        </td>
                        <td> 同上 </td>
                        <td>
                            数字类检查
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_safe
                        </td>
                        <td> 同上 </td>
                        <td>
                            安全字符检查
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_password
                        </td>
                        <td> 同上 </td>
                        <td>
                            密码类型属性，CSS 表达式或其他
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_ip
                        </td>
                        <td> 同上 </td>
                        <td>
                            IP地址型属性
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_url
                        </td>
                        <td> 同上 </td>
                        <td>
                            链接地址属性
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_email
                        </td>
                        <td> 同上 </td>
                        <td>
                            邮箱地址属性
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_idcard
                        </td>
                        <td> 同上 </td>
                        <td>
                            身份证号属性
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_phone
                        </td>
                        <td> 同上 </td>
                        <td>
                            电话号码属性
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_mobile
                        </td>
                        <td> 同上 </td>
                        <td>
                            手机号码属性
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_datetime
                        </td>
                        <td> 同上 </td>
                        <td>
                            时间日期属性
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_regex
                        </td>
                        <td> 同上 </td>
                        <td>
                            正则表达式
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_value
                        </td>
                        <td> 字符串 </td>
                        <td>
                            将当前值与目标元素的值进行比较（CSS 选择器）
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_minsize
                        </td>
                        <td> 数值 </td>
                        <td>
                            字符最小长度
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_maxsize
                        </td>
                        <td> 数值 </td>
                        <td>
                            字符最大长度
                        </td>
                    </tr>
                    <tr>
                        <td>
                            fix_extension
                        </td>
                        <td> 字符串 </td>
                        <td>
                            允许上传的扩展名（以空隔分隔）
                        </td>
                    </tr>
                </table>
                
                <p>使用范例：</p>
                
                <pre> &lt;input type="text" name="account" value="" fix_name="用户名称" fix_null="yes" /&gt; </pre>

            </dd>

            <dt> Mo.Serialize( form, func, link ) </dt>
            <dd>

                <p>将表单元素项和值转为序列化数据。</p>
                
                <blockquote>
                    <p> <strong>form</strong>  表单对象</p>
                    <p> <strong>func</strong>  元素值编码使用的函数，默认使用 encodeURIComponent</p>
                    <p> <strong>link</strong>  是否将结果转换为 URL 字符串，请使用 &</p>
                </blockquote>

                <pre>Mo.Serialize( Mo("form").choice(0) );</pre>

                <p>将表单元素项和值转为 URL 字符串。</p>

                <pre>Mo.Serialize( Mo("form").choice(0), function( str ){ return escape( str ); } );</pre>

                <p> <button type="submit" id="btn_url">测试</button> </p>

                <p id="url">  </p>

            </dd>
            
            <dt> Mo.Password( string, func ) </dt>
            <dd>

                <p>密码强度测试。</p>
                
                <blockquote>
                    <p> <strong>string</strong>  字符串</p>
                    <p> <strong>func</strong>  回调函数</p>
                </blockquote>
                
                <p>func 可接受参数</p>

                <blockquote>
                    <p> <strong>value </strong>  强度级别值</p>
                    <p> <strong>level</strong>  强度级别，分为：["极佳","很好","一般","简单"]</p>
                </blockquote>

                <pre>Mo.Password( Mo("form").choice(0) );</pre>

                <p> 密码：<input type="text" name="password" id="password" value="" /> </p>

                <p id="pw"> </p>

            </dd>
            
            <dt> Mo.Config() </dt>
            <dd>

                <p>将 RGB 颜色值转为 16 进制颜色值。</p>

                <pre>Mo.Config( [255,255,255] );</pre>

            </dd>

        </dl>
        
        <script type="text/javascript">

        /************* 表单序列化 测试 ****************/

        Mo("#btn_url").bind('click',function(){

            Mo("#url").html( Mo.Serialize( Mo("form").item(0), false, "&" ) );

        });
        
        /************* 密码强度测试 测试 ****************/

        Mo("#password").bind('keyup',function(){
        
             Mo.Password( this.value, function( value, level ){             
                Mo("#pw").html( "密码强度："+value +" 强度级别："+level );             
             });        
                         
        });
        
        </script>

    </div>

    <div id="footer">

        Copyright &copy; 2011 <a href="http://www.veryide.com">VeryIDE</a> <span>|</span><a href="http://www.veryide.com/projects/">Projects</a> <span>|</span> <a href="http://www.veryide.com/projects/mojs/">Mo.js</a> <span>|</span> <a href="../packer.html">Packer</a> <span>|</span> <a href="../regex.html">Regex</a>

    </div>
            
    <p style="display:none;">
        <script language="javascript" type="text/javascript" src="http://js.users.51.la/960393.js"></script>
    </p>
            
</body>
</html>